AppMaker - v2.11 ********** What it does: AppMaker creates a skeleton for a Windows based application which is compatible with Visual C++ and MFC 2.0. It stops you from constantly copying the source to Generic.exe each time you want to put together a quick test program. Other programs (most notably AppWizard) do the same thing for you except that they generate A LOT of code. AppMaker is intended to generate a 'minimal' Windows application. ********** Important Notice. I received many valuable inputs from several people regarding the original AppMaker. Several of you pointed out many things that were wrong with the generated code.... everything from not using OnPostNcDestroy() properly to the problems and pitfalls of registering a HICON to the window class (dialog) of the main application window. Thank you all. Unfortunately I no longer have your names and CompuServe account numbers to give you the proper credit you deserve. If you have questions, comments and/or problems then let me know and I will do my best to answer them. If you sent your feedback to the OLD CompuServe account then you probably didn't get a reply. I no longer get mail at that account number. Please use my new CServe number which is 74261,1263. I no longer receive mail at the old number. No, I'm not rude. I just never got your message(s). ********** How much is it? It's free (still and probably forever) ! ********** Revision History v2.11 Basically the same as 2.1 except serialization can now be turned ON and OFF from the Options tabbed dialog. (Default is OFF). Serialization supported is added to the File-Open and File-Save dialog box code. v2.1 Improved the code for OnFileOpen() and OnFileSave(). There was nothing wrong with the old code except that the user still had to add quite a bit of code. The common dialog code for File-Open and File-Save now inserts a string to allow picking files of a certain type. Edit this string to suite your needs. File-Open and File-Save functions now generate code for serialization. It creates a CArchive object from the filename which was chosen. This entire section of code is protected by a TRY-CATCH block. The application icon is now only loaded once and stored. Previously it would be loaded each time it was needed. v2.0 Major re-write. New user interface. New internal code generator. Win32 support for VC++ for Windows NT. Many more options all around. Better code generation since several of the problems (bugs) that existed with the original generated code have been corrected. v1.4 Limited release. Fixed some annoying bugs found in previous versions. v1.3 Added 'Options...' to the 'File' menu which allows you to select the name for your main window class, icon accelerator and menu resources. Cleaned up a few lines of code which create the 3D look which were causing problems with Win32. Minor optimizations to the file I/O section which slightly improves speed. Added (this) revision history. v1.2 Received a fair amount of interest and user input. The dialog box has been re-arranged. There is a Comments box that gives additional information on the option which you are currently selecting. Click on the options with a mouse and info on that item will be displayed. I'm sure AppMaker won't win any usability awards but it is a step in the right direction. Optional DDV/DDX support has been added. v1.1 Initial release into the public domain. Added a Windows user interface to the program so that it would be usable by others. Internally it is essentially the same as v1.0. Externally it sported a real UI rather than relying on command line switches to select various options. v1.0 Initial application written as a text-only DOS app. I was tired of having all of my applications named 'Generic.exe' so I wrote AppMaker to help me generate a quick Windows application whenever I needed one. ********** Why not use AppWizard? If you are creating a LARGE application like Excel or WinWord then AppWizard will get you off to a good running start. SMALL applications are a different story. Small applications are created frequently to try a new piece of code or to test a DLL. Sometimes all you want to do is display some text and send a few messages to another window. In times like this a full-blown application doesn't make sense. You don't want the overhead and hassles of multiple source and header files along with a Document-View architecture. All you want is a simple and functional Windows program. ********** Advantages of AppMaker: 1 - Your main window is a dialog box. This allows you to use AppStudio to design and draw your main window much like Visual Basic does. 2 - You application will not fall short on functionality. Your application will have an icon, menu, accelerators, etc. 3 - The windows dialog manager takes care of WM_PAINT (OnPaint) messages as well as tabbing between the various controls. You don't have to deal with any of this. 4 - You still have 100% access to all of your development tools such as AppStudio and ClassWizard to help code and build your application. ********** How do I start using it ? The only file you need is AppMaker.exe. Run it and select a empty directory from the Dir. list box. Enter name for your new application name in the edit box. The application name is limited to 8 chars. and must not contain commas, periods or any other characters which can not be used in a filename. Select the options you want and press the 'Create' button. A dialog box will appear telling you that the application has been created and what to do next. ********** I want to know more details! Several files (.CPP, .H, .DEF, .RC, .MAK, etc) will be created using the application name as the base name of the files. Open the makefile (.MAK) from Visual Workbench or double click on it using File Manager. You can compile the program immediately after opening the project. You may also want to open and view the .CPP file for more information. Although the application does nothing, it will display a empty dialog box. You can go into AppStudio and edit the dialog box. You can add controls and message handlers for them. As mentioned at the top of the .CPP file, you will have to perform a few simple steps when you use ClassWizard for the first time on a new application. ********** CTL3D.H !!!!! Many people have had questions regarding CTL3D.H. Most questions usually go something like this: "I try to compile the program but I get an error saying that the compiler can't find CTL3D.H". I will try to explain this in hopes of making it clear to all. The option labeled '3D Controls (CTL3D)'. The 'CTL3D' is a hint that you need CTL3D.H and CTL3D.LIB to compile and link. This allows your application to have the 'high tech' 3D look (sort of like AppMaker). If you DO NOT have Ctl3D.h and Ctl3d.lib then DO NOT select this option when running AppMaker. If you have Ctl3d.h and Ctl3d.lib then you can select this option if you want the 3D look for your application. (Appmaker expects to find these files in the same place as the rest of your .LIB and .H files.) I have not included Ctl3D.lib and Ctl3d.h. They are available online from the Microsoft forums. If you want these files then download them since they will be current with documentation, help files and all the other goodies. ********** In closing..... I hope you find AppMaker useful and that these instructions adequate. If there is another application out there (shareware or retail) with the name AppMaker, I apologize for accidentally naming this program the same as yours. No harm is intended. If you don't understand my instructions or how this works, drop me a line. I'd be glad to talk to you about it. If you have any other questions/comments/suggestions then let me know. I can be reached on CompuServe at 74261,1263 or by voice at (315) 732-4542. Final Note: AppMaker no longer requires CTL3D.DLL to run. Best of luck to all! - Mark Szamrej - 74261.1263@CompuServe.com